package com.tenement.mybatis.dao;

import java.util.List;

import com.tenement.mybatis.entity.Admin;

public interface AdminMapper {

	int insert(Admin record);

	int insertSelective(Admin record);

	Admin selectByPrimaryKey(Integer aId);

	int updateByPrimaryKeySelective(Admin record);

	int updateByPrimaryKey(Admin record);

	/**
	 * 管理员登录
	 * 
	 * @param admin
	 * @return
	 */
	Admin loginAdmin(Admin admin);

	/**
	 * 获得所有的管理员信息
	 * 
	 * @return
	 */
	List<Admin> getAdminListAll();

	/**
	 * 分页查询
	 * 
	 * @param aname
	 * @param account
	 * @param pageSize
	 * @param startRecord
	 * @return
	 */
	List<Admin> getAdminListPage(String aname, String account, int pageSize, int startRecord);

	/**
	 * 删除管理员信息
	 * 
	 * @param aId
	 * @return
	 */
	int deleteByPrimaryKey(Integer aId);

	/**
	 * 添加管理员,只需添加管理员名称，其他属性均为默认值或生成
	 * 
	 * @return
	 */
	int addAdmin(Admin admin);

	/**
	 * 重置管理员密码
	 * 
	 * @param admin
	 * @return
	 */
	int resetAdminPWd(Admin admin);

	/**
	 * 获取总记录数
	 * 
	 * @param admin
	 * @return
	 */
	int getTotalRecords(Admin admin);
	
	/**
	 * 判断生成的账号是否存在，如果存在就生成
	 * @return
	 */
	Admin judgeAccountExist();
	

}